赌球网 (中国)有限公司官网

最火热的棋牌游戏赚钱 (中国)·官方网站

 

開(kāi)源ERP產(chǎn)品簡(jiǎn)介及研發(fā)理念

標(biāo)題:博開(kāi)源ERP產(chǎn)品簡(jiǎn)介及研發(fā)理念

標(biāo)簽:開(kāi)源ERP;零售業(yè);Android開(kāi)發(fā)者;Java web開(kāi)發(fā)者;小程序

ERP產(chǎn)品簡(jiǎn)介

ERP是什么

ERP是幫助零售門(mén)店商家經(jīng)營(yíng)的ERP軟件,在門(mén)店的顧客、員工、商品3者的數(shù)量達(dá)到一定程度后應(yīng)用開(kāi)源博ERP系統(tǒng),能有效減輕商家經(jīng)營(yíng)負(fù)擔(dān)、提升顧客滿意度。目前博ERP已開(kāi)發(fā)出滿足單一門(mén)店經(jīng)營(yíng)需求的產(chǎn)品,我們把該產(chǎn)品稱為博銷寶ProSales Box)。

ERP可以帶給你什么

l  對(duì)于Java web開(kāi)發(fā)者,可以快速照抄博ERPJava后端框架。

l  對(duì)于Android開(kāi)發(fā)者,可以快速照抄一套網(wǎng)絡(luò)請(qǐng)求框架。

l  對(duì)于教師和學(xué)生,本項(xiàng)目將是你迅速提高教學(xué)質(zhì)量、投身真實(shí)戰(zhàn)場(chǎng)的二選擇。

l  對(duì)于項(xiàng)目經(jīng)理和企業(yè)管理者,可以快速組件一個(gè)具備先進(jìn)開(kāi)發(fā)流程的團(tuán)隊(duì)。

l  對(duì)于零售企業(yè),應(yīng)用開(kāi)源的博ERP可以低成本、快速、0試錯(cuò)搭建一個(gè)新的商業(yè)軟件系統(tǒng),尤其是N平臺(tái)客戶端1服務(wù)器的軟件系統(tǒng),博ERP可以為你節(jié)省大量成本(資金和時(shí)間)。

軟件定制開(kāi)發(fā)業(yè)務(wù)聯(lián)系:

QR 代碼

描述已自動(dòng)生成

ERP所能滿足的用戶需求

以小型單店為例,通常有如下類型的用戶:顧客、老板、店長(zhǎng)、收銀員。其中顧客是核心用戶類型,老板、店長(zhǎng)和收銀員均圍繞顧客的購(gòu)物需求開(kāi)展經(jīng)營(yíng)活動(dòng)。以下為各類型用戶的基本需求:

 圖示

描述已自動(dòng)生成

根據(jù)用戶需求分析,博研發(fā)團(tuán)隊(duì)定義了如下系統(tǒng)角色:

 

角色

角色說(shuō)明

會(huì)員

即顧客群體當(dāng)中認(rèn)可商家,愿意提供手機(jī)號(hào)碼進(jìn)行注冊(cè)為會(huì)員的顧客。

老板

即門(mén)店所有權(quán)人。

店長(zhǎng)

即負(fù)責(zé)門(mén)店日常運(yùn)作、處理的各類事項(xiàng)的管理人員。

收銀員

即負(fù)責(zé)商品過(guò)機(jī)及收款的人員。

系統(tǒng)操作員(系統(tǒng)OP

即博公司內(nèi)部負(fù)責(zé)為商家開(kāi)通及配置博ERP的人員,通常由客戶經(jīng)理?yè)?dān)任。

 

ERP子系統(tǒng)結(jié)構(gòu)及模塊簡(jiǎn)介

ERP子系統(tǒng)結(jié)構(gòu):

圖示

描述已自動(dòng)生成

ERP包含了nbr服務(wù)器端和客戶端。

nbr服務(wù)器包含商家ERP子系統(tǒng)和客戶管理子系統(tǒng)(CMS),它們的模塊組成如圖:

圖示

描述已自動(dòng)生成

 

用戶客戶端:POS機(jī)客戶端(包含安卓應(yīng)用軟件和電腦桌面應(yīng)用軟件)、微信小程序、微信公眾號(hào)

圖示

描述已自動(dòng)生成圖示

描述已自動(dòng)生成

ERP產(chǎn)品研發(fā)理念

研發(fā)團(tuán)隊(duì)做好事情的原則

2019327日,一個(gè)名為“996ICU”的項(xiàng)目在GitHub上傳開(kāi),迅速火遍了全網(wǎng)。這一事件揭露出了國(guó)內(nèi)程序員的加班現(xiàn)狀,反應(yīng)出了程序員們對(duì)這種加班狀況的抗拒心理。2021年下半年,騰訊等互聯(lián)網(wǎng)公司相繼宣布取消996工作制,國(guó)內(nèi)程序員是否迎來(lái)了不用加班的福音?短時(shí)間內(nèi)恐怕還不行,不過(guò)這無(wú)疑是人心所向,是一種趨勢(shì)。那么之前通過(guò)加班才能完成的工作,取消996工作制,還能按時(shí)按量的完成工作嗎?答案是肯定的,不過(guò)需要找出一個(gè)科學(xué)有效的方法。

我們都知道,程序員加班很多時(shí)候并非開(kāi)發(fā)一些新功能,而是陷入了修bugbug的泥潭中。如果能避免或減少這種情況,那么程序員就能高效率的完成工作。博研發(fā)團(tuán)隊(duì)開(kāi)發(fā)博ERP時(shí),始終沒(méi)有忘記尋找科學(xué)有效的方法,讓研發(fā)人員輕松地把事情做好。做好事情是許多團(tuán)隊(duì)的基本要求,但是輕松地做好,幾乎是奢求。我們通過(guò)嚴(yán)格執(zhí)行以下團(tuán)隊(duì)組織原則達(dá)成“輕松地做好事情”的目標(biāo):

第一,重復(fù)。其精華體現(xiàn)在以下幾個(gè)方面:

l  通過(guò)重復(fù)使事情逼近一個(gè)完美的狀態(tài),此重復(fù)即迭代。我們認(rèn)為這是敏捷開(kāi)發(fā)最大的精華。

l  令重復(fù)的事情不重復(fù)。使用機(jī)器來(lái)代替人類的重復(fù)勞動(dòng),使得人類有精力完成更多的事情。譬如自動(dòng)化測(cè)試可以解放大量的生產(chǎn)力。

l  不能重復(fù)做的事情,想方設(shè)法重復(fù)做(針對(duì)事情本身或拆分后的局部,進(jìn)行多次重復(fù)的仿真),以使真正第一次做時(shí)就成功。

l  人類不是禽獸,通過(guò)重復(fù)做一件事,必定可以獲得進(jìn)步。

軟件工程充滿各種重復(fù)。據(jù)說(shuō)Windows 2000大約有2000萬(wàn)行代碼,由大約1000位軟件工程師完成。假設(shè)他們事先得到了上帝的指引,編碼完全不需要修改而且沒(méi)有bug,那么,按照每人一天1000行代碼的速度,這些工程師20天就可以開(kāi)發(fā)一個(gè)Windows 2000。但是事實(shí)上并非如此,Windows 2000開(kāi)發(fā)周期是三年左右。可見(jiàn)這些工程師花費(fèi)了大量的時(shí)間做了重復(fù)的事情。如果我們?cè)谲浖こ汤锩婧芎玫乜刂浦貜?fù)的勞動(dòng),那么一定可以輕松地將事情做好。博ERP代碼量大約100萬(wàn)行,測(cè)試用例大概是15000個(gè)(大部分是自動(dòng)化測(cè)試),研發(fā)團(tuán)隊(duì)人數(shù)11人(絕大部分是實(shí)習(xí)生),開(kāi)發(fā)周期是18個(gè)月左右,由于很好地遵循了重復(fù)的原則,加上以下第二點(diǎn)的流程,程序員幾乎不加班,經(jīng)常處于一種精神抖擻、斗志昂揚(yáng)、活潑有趣的工作氛圍中,工作效率比較高。

 

第二,流程。結(jié)合業(yè)界的先進(jìn)流程,探索以及不斷優(yōu)化一些適合博研發(fā)團(tuán)隊(duì)的敏捷開(kāi)發(fā)流程。一個(gè)產(chǎn)品從01,和從12,其流程是不同的。我們采用的軟件工程流程如下:

階段

主要活動(dòng)

軟件產(chǎn)出

服務(wù)器要求

作用

立項(xiàng)

主要論證市場(chǎng)需求和政策需求,即產(chǎn)品研發(fā)的原因。

立項(xiàng)書(shū)

 

 

需求分析

BA(商業(yè)洞察者)制作需求規(guī)格說(shuō)明書(shū)。

需求規(guī)格說(shuō)明書(shū)

 

商業(yè)角度看需求

RD(研發(fā)團(tuán)隊(duì))將業(yè)務(wù)轉(zhuǎn)化為BARD都可以理解的文檔。

功能需求說(shuō)明書(shū)

 

BARD對(duì)需求達(dá)成一致的理解

設(shè)計(jì)

RD將功能需求說(shuō)明書(shū)細(xì)化成概要設(shè)計(jì)說(shuō)明書(shū)甚至詳細(xì)設(shè)計(jì)說(shuō)明書(shū),使得RD在開(kāi)發(fā)、修改bug、迭代新功能時(shí)有據(jù)可依。如果沒(méi)有這些文檔,后面的溝通費(fèi)時(shí)費(fèi)力。

在產(chǎn)品的維護(hù)期,一旦有問(wèn)題出現(xiàn),幾乎無(wú)法輕松解決。故一般來(lái)說(shuō),缺乏本階段的文檔,產(chǎn)品沒(méi)有很強(qiáng)的生命力,難以可持續(xù)發(fā)展。維護(hù)成本巨大,所有人都很頭痛。

概要設(shè)計(jì)說(shuō)明書(shū)、詳細(xì)設(shè)計(jì)說(shuō)明書(shū)、

測(cè)試用例設(shè)計(jì)文檔

 

RD內(nèi)部對(duì)需求達(dá)成一致的理解

編碼和測(cè)試

如之前所言,編碼期,會(huì)進(jìn)行手動(dòng)測(cè)試和編寫(xiě)自動(dòng)化測(cè)試。

敏捷開(kāi)發(fā)擁抱需求變化,所以在需求變化發(fā)生后,有些功能會(huì)回到設(shè)計(jì)階段甚至需求階段進(jìn)行討論。

代碼、測(cè)試用例設(shè)計(jì)文檔、測(cè)試腳本

11臺(tái)開(kāi)發(fā)機(jī)器

 

DEV

開(kāi)發(fā)測(cè)試階段。測(cè)試單項(xiàng)功能、手動(dòng)單元測(cè)試,每天運(yùn)行全部自動(dòng)化測(cè)試并發(fā)送問(wèn)題報(bào)告。版本更新非常頻繁。

兼有運(yùn)行測(cè)試、運(yùn)行產(chǎn)品的服務(wù)器

1臺(tái)服務(wù)器

確保單項(xiàng)功能沒(méi)有問(wèn)題

SIT

集成測(cè)試階段。測(cè)試N項(xiàng)功能同時(shí)運(yùn)行有沒(méi)有問(wèn)題。在DEV階段開(kāi)發(fā)得到穩(wěn)定的版本后,再部署到本階段的服務(wù)器

運(yùn)行產(chǎn)品的集成測(cè)試服務(wù)器

1臺(tái)服務(wù)器

確保集成測(cè)試沒(méi)有問(wèn)題

UAT

用戶驗(yàn)收階段。用戶驗(yàn)收功能是否正確。

運(yùn)行產(chǎn)品的用戶驗(yàn)收服務(wù)器

1臺(tái)服務(wù)器

確保用戶滿意

Prod

生產(chǎn)環(huán)境階段。用戶使用。

運(yùn)行產(chǎn)品的線上服務(wù)器,即生產(chǎn)環(huán)境

1臺(tái)服務(wù)器或以上

產(chǎn)出用戶價(jià)值

維護(hù)期

功能迭代。

 

 

 

 

敏捷開(kāi)發(fā)方式

針對(duì)用戶需求不是所有都明確的、可能發(fā)生改變的,敏捷開(kāi)發(fā)可以很好地應(yīng)對(duì)這種情況。敏捷開(kāi)發(fā)以用戶的需求進(jìn)化為核心,采用迭代、循序漸進(jìn)的方法進(jìn)行軟件開(kāi)發(fā)。敏捷開(kāi)發(fā)屬于增量式開(kāi)發(fā),在開(kāi)發(fā)軟件過(guò)程中,將軟件分為一個(gè)個(gè)小的模塊。先開(kāi)發(fā)主要的模塊,再開(kāi)發(fā)次要模塊,逐步完善,最終開(kāi)發(fā)出符合需求的軟件產(chǎn)品。它的最大特點(diǎn)是迭代,能更好的應(yīng)對(duì)用戶需求變更較多的情況。

我們特別重視“重復(fù)和流程”,這是我們?cè)陂_(kāi)發(fā)過(guò)程中總結(jié)出來(lái)的,認(rèn)為做某一類事情的科學(xué)方法和步驟。然后不斷的重復(fù)按照這個(gè)流程去做類似的事情,結(jié)果我們會(huì)越來(lái)越熟練,完成事情效率也會(huì)越高。開(kāi)發(fā)人員應(yīng)該也必須按照“重復(fù)和流程”做事情,我們也會(huì)不斷的迭代已有的流程,讓團(tuán)隊(duì)受益于新的更有效的做事方法,輕松做好事情。

項(xiàng)目管理工具

JIRAAtlassian公司出品的項(xiàng)目與事務(wù)跟蹤工具,被廣泛應(yīng)用于敏捷管理、需求收集、任務(wù)跟蹤、缺陷跟蹤等工作領(lǐng)域。我們使用它來(lái)進(jìn)行博ERP研發(fā)管理。博團(tuán)隊(duì)研發(fā)人員經(jīng)過(guò)討論,制定出一個(gè)Sprint沖刺(未來(lái)一個(gè)短時(shí)間段要完成的目標(biāo)),項(xiàng)目管理人員根據(jù)目標(biāo)細(xì)分任務(wù),在上面創(chuàng)建、分配、追蹤任務(wù)。將項(xiàng)目分為一個(gè)一個(gè)的Sprint沖刺去完成,能更好的應(yīng)對(duì)用戶需求的變化。程序員在分配的任務(wù)上編寫(xiě)工作計(jì)劃、工作總結(jié)。工作計(jì)劃就像茫茫大海中的指南針,讓我們不會(huì)失去方向,或避免做了撿芝麻丟西瓜的事情。不管遇到好的壞的,我們都應(yīng)該善于做工作總結(jié),好的可以分享給其它隊(duì)友,壞的可以提醒自己和他人注意,當(dāng)下一次做類似事情的時(shí)候,勢(shì)必會(huì)胸有成竹、馬到成功。

軟件工程流程細(xì)節(jié)

前面表格介紹了我們采用的軟件工程流程包含了以下階段:立項(xiàng)、需求分析、設(shè)計(jì)、編碼和測(cè)試、DEVSITUATProd、維護(hù)期。在每一個(gè)階段,我們都會(huì)產(chǎn)出一些文檔。用文檔記錄思考或討論好的事情,讓我們智慧的結(jié)晶得以保存,也有利于后期的迭代完善。沒(méi)有文檔,我們就無(wú)章可循,像一只無(wú)頭蒼蠅亂撞,程序員與產(chǎn)品經(jīng)理打架的悲劇也將不斷重演。

       我們認(rèn)為,需求分析在整個(gè)軟件的開(kāi)發(fā)周期中占比是最大的,在開(kāi)發(fā)前期、開(kāi)發(fā)期和開(kāi)發(fā)后期都可能不斷的做著需求分析的工作。所以在前期做需求分析的工作越充足,后面改動(dòng)越少,額外花費(fèi)的時(shí)間也會(huì)越少。產(chǎn)品經(jīng)理根據(jù)市場(chǎng)調(diào)研編寫(xiě)出需求規(guī)格說(shuō)明書(shū),然后與開(kāi)發(fā)人員根據(jù)需求規(guī)格說(shuō)明書(shū),編寫(xiě)出功能需求文檔,開(kāi)發(fā)人員最后根據(jù)功能需求說(shuō)明書(shū)編寫(xiě)出數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明書(shū)和詳細(xì)設(shè)計(jì)說(shuō)明書(shū)。

       各個(gè)開(kāi)發(fā)人員的代碼體系不應(yīng)各成一派,不利于后期的維護(hù)。在不斷的迭代中,我們也有了自己的一套代碼架構(gòu)。該有的代碼結(jié)構(gòu)不能少,不該有的也不能畫(huà)蛇添足。這樣統(tǒng)一代碼架構(gòu)讓隊(duì)友間討論彼此代碼的時(shí)候能更迅速的了解對(duì)方的思路,甚至能指引新員工如何去寫(xiě)代碼。在編碼階段,我們還會(huì)總結(jié)出很多好的做事方法,如怎樣解決bug、如何進(jìn)行代碼的重構(gòu)等,并記錄到開(kāi)發(fā)文檔當(dāng)中。

螞蟻金服擁有30多萬(wàn)的測(cè)試用例,說(shuō)明他們對(duì)測(cè)試用例是非常重視的。我們開(kāi)發(fā)這個(gè)產(chǎn)品也是很注重測(cè)試的,認(rèn)為測(cè)試用例越豐富、越全面,開(kāi)發(fā)出來(lái)的軟件越穩(wěn)定、越符合需求。開(kāi)發(fā)人員編寫(xiě)自動(dòng)化測(cè)試代碼代替重復(fù)的手動(dòng)測(cè)試工作。開(kāi)發(fā)人員對(duì)自己開(kāi)發(fā)的功能編寫(xiě)測(cè)試用例,測(cè)試驅(qū)動(dòng)開(kāi)發(fā),編寫(xiě)功能代碼。寫(xiě)好功能代碼后,根據(jù)測(cè)試用例編寫(xiě)自動(dòng)化測(cè)試代碼,確保測(cè)試通過(guò),保證功能的穩(wěn)定。以上的單元測(cè)試我們稱為元粒度測(cè)試,除此之外,在不斷地迭代過(guò)程我們還會(huì)產(chǎn)出以下粒度的測(cè)試:

1)細(xì)粒度測(cè)試:子系統(tǒng)級(jí)測(cè)試;

2)中粒度測(cè)試:跨子系統(tǒng)級(jí)測(cè)試;

3)大粒度測(cè)試測(cè)試:用戶接受度測(cè)試;

4)在這一階段會(huì)產(chǎn)出功能代碼、測(cè)試代碼、測(cè)試用例文檔。

在一次次的部署中我們發(fā)現(xiàn),將代碼部署到服務(wù)器是一個(gè)步驟比較多、比較復(fù)雜的過(guò)程,人工去完成這些操作會(huì)出現(xiàn)遺忘某些步驟、在某些步驟容易出錯(cuò)的情況。我們就思考能不能把這些操作交給機(jī)器去完成,避免這樣的情況發(fā)生。于是我們應(yīng)用了Jenkins,它是一個(gè)持續(xù)集成工具,結(jié)合SVNMAVENpython腳本完成自動(dòng)化部署,可以提高效率和避免手動(dòng)部署的出錯(cuò)。Jenkins還可以很好地結(jié)合TestNG,使用它運(yùn)行自動(dòng)化測(cè)試代碼、生成測(cè)試報(bào)告并發(fā)送給開(kāi)發(fā)人員。Jenkins相關(guān)用例圖如圖所示:

圖示

描述已自動(dòng)生成

備注:

皇后”Windows服務(wù)和“小王子”是我們自行開(kāi)發(fā)的工具。“皇后”Windows服務(wù)用來(lái)創(chuàng)建數(shù)據(jù)庫(kù),她在接到nbr服務(wù)器創(chuàng)建數(shù)據(jù)庫(kù)的請(qǐng)求后開(kāi)始執(zhí)行任務(wù)。

“小王子”是用來(lái)刷新數(shù)據(jù)庫(kù)或配合Jenkins任務(wù)啟動(dòng)tomcat的。

 

 

開(kāi)源ERP代碼及開(kāi)發(fā)文檔托管在GitHubhttps://github.com/Boxin-ChinaGD/BXERP

技術(shù)博客:https://www.cnblogs.com/BXERP/

 

© 2014-2022 廣州市博信息技術(shù)有限公司 版權(quán)所有 粵ICP備15067421號(hào)

双辽市 河源市 若羌县 黎川县 建平县 黄大仙区
元阳县 黄浦区 济宁市 太白县 四川省 滨州市
温州市 保定市 昌邑市 曲周县 砚山县 邵武市
g3娱乐| 彩票注册送彩金| 金门娱乐城| 澳门高尔夫赌场| 百家乐搏牌| 大发888hanpa| 葡京真人真钱棋牌| 网上百家乐骗人| 水果机游戏机遥控器| 庄闲和百家乐桌布| 玩百家乐去哪个娱乐城最安全| 大玩家娱乐城开户| 新2足球开户| 金牛国际| 最大赌场担保网址| 至尊国际开户| 澳门赌场试玩| 电子百家乐假在线哪| 兴胜娱乐| 博亚网| 大发888娱乐场存款168| 赌博网站可试玩| 送彩金百家乐平台| 三彩博乐网| 百家乐登封代理| 真人棋牌送金币| 君怡娱乐城| 大发888坑人么| 盛大娱乐网| 太阳城娱乐城官方网| 波音足球系统出租| 百家乐是怎样的| 网络博彩送彩金| 自贡市| 博发网址| 赌百家乐波音备用网| 澳嘉国际娱乐| 电脑版百家乐下注技巧| 澳门博彩网欧洲杯vs| 伯爵百家乐赌场娱乐网规则| 八部亚洲|